home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 October: Mac OS SDK / Dev.CD Oct 97 SDK1.toast / Development Kits (Disc 1) / Interfaces&Libraries / Universal / Interfaces / PInterfaces / Collections.p < prev    next >
Encoding:
Text File  |  1997-08-12  |  15.6 KB  |  473 lines  |  [TEXT/MPS ]

  1. {
  2.      File:        Collections.p
  3.  
  4.      Contains:    Collection Manager Interfaces
  5.  
  6.      Version:    Technology:    System 7.x
  7.                  Release:    Universal Interfaces 3.0.1
  8.  
  9.      Copyright:    © 1989-1997 by Apple Computer, Inc., all rights reserved
  10.  
  11.      Bugs?:        Please include the the file and version information (from above) with
  12.                  the problem description.  Developers belonging to one of the Apple
  13.                  developer programs can submit bug reports to:
  14.  
  15.                      devsupport@apple.com
  16.  
  17. }
  18. {$IFC UNDEFINED UsingIncludes}
  19. {$SETC UsingIncludes := 0}
  20. {$ENDC}
  21.  
  22. {$IFC NOT UsingIncludes}
  23.  UNIT Collections;
  24.  INTERFACE
  25. {$ENDC}
  26.  
  27. {$IFC UNDEFINED __COLLECTIONS__}
  28. {$SETC __COLLECTIONS__ := 1}
  29.  
  30. {$I+}
  31. {$SETC CollectionsIncludes := UsingIncludes}
  32. {$SETC UsingIncludes := 1}
  33.  
  34. {$IFC UNDEFINED __TYPES__}
  35. {$I Types.p}
  36. {$ENDC}
  37. {$IFC UNDEFINED __MIXEDMODE__}
  38. {$I MixedMode.p}
  39. {$ENDC}
  40.  
  41.  
  42. {$PUSH}
  43. {$ALIGN MAC68K}
  44. {$LibExport+}
  45.  
  46. {***********}
  47. { Constants }
  48. {***********}
  49. { Convenience constants for functions which optionally return values }
  50.  
  51. CONST
  52.     kCollectionDontWantTag        = 0;
  53.     kCollectionDontWantId        = 0;
  54.     kCollectionDontWantSize        = 0;
  55.     kCollectionDontWantAttributes = 0;
  56.     kCollectionDontWantIndex    = 0;
  57.     kCollectionDontWantData        = 0;
  58.  
  59.  
  60. { attributes bits }
  61.     kCollectionNoAttributes        = $00000000;                    {  no attributes bits set  }
  62.     kCollectionAllAttributes    = $FFFFFFFF;                    {  all attributes bits set  }
  63.     kCollectionUserAttributes    = $0000FFFF;                    {  user attributes bits  }
  64.     kCollectionDefaultAttributes = $40000000;                    {  default attributes - unlocked, persistent  }
  65.  
  66.  
  67.     Attribute bits 0 through 15 (entire low word) are reserved for use by the application.
  68.     Attribute bits 16 through 31 (entire high word) are reserved for use by the Collection Manager.
  69.     Only bits 31 (kCollectionLockBit) and 30 (kCollectionPersistenceBit) currently have meaning.
  70. }
  71.     kCollectionUser0Bit            = 0;
  72.     kCollectionUser1Bit            = 1;
  73.     kCollectionUser2Bit            = 2;
  74.     kCollectionUser3Bit            = 3;
  75.     kCollectionUser4Bit            = 4;
  76.     kCollectionUser5Bit            = 5;
  77.     kCollectionUser6Bit            = 6;
  78.     kCollectionUser7Bit            = 7;
  79.     kCollectionUser8Bit            = 8;
  80.     kCollectionUser9Bit            = 9;
  81.     kCollectionUser10Bit        = 10;
  82.     kCollectionUser11Bit        = 11;
  83.     kCollectionUser12Bit        = 12;
  84.     kCollectionUser13Bit        = 13;
  85.     kCollectionUser14Bit        = 14;
  86.     kCollectionUser15Bit        = 15;
  87.     kCollectionReserved0Bit        = 16;
  88.     kCollectionReserved1Bit        = 17;
  89.     kCollectionReserved2Bit        = 18;
  90.     kCollectionReserved3Bit        = 19;
  91.     kCollectionReserved4Bit        = 20;
  92.     kCollectionReserved5Bit        = 21;
  93.     kCollectionReserved6Bit        = 22;
  94.     kCollectionReserved7Bit        = 23;
  95.     kCollectionReserved8Bit        = 24;
  96.     kCollectionReserved9Bit        = 25;
  97.     kCollectionReserved10Bit    = 26;
  98.     kCollectionReserved11Bit    = 27;
  99.     kCollectionReserved12Bit    = 28;
  100.     kCollectionReserved13Bit    = 29;
  101.     kCollectionPersistenceBit    = 30;
  102.     kCollectionLockBit            = 31;
  103.  
  104.  
  105. { attribute masks }
  106.     kCollectionUser0Mask        = $00000001;
  107.     kCollectionUser1Mask        = $00000002;
  108.     kCollectionUser2Mask        = $00000004;
  109.     kCollectionUser3Mask        = $00000008;
  110.     kCollectionUser4Mask        = $00000010;
  111.     kCollectionUser5Mask        = $00000020;
  112.     kCollectionUser6Mask        = $00000040;
  113.     kCollectionUser7Mask        = $00000080;
  114.     kCollectionUser8Mask        = $00000100;
  115.     kCollectionUser9Mask        = $00000200;
  116.     kCollectionUser10Mask        = $00000400;
  117.     kCollectionUser11Mask        = $00000800;
  118.     kCollectionUser12Mask        = $00001000;
  119.     kCollectionUser13Mask        = $00002000;
  120.     kCollectionUser14Mask        = $00004000;
  121.     kCollectionUser15Mask        = $00008000;
  122.     kCollectionReserved0Mask    = $00010000;
  123.     kCollectionReserved1Mask    = $00020000;
  124.     kCollectionReserved2Mask    = $00040000;
  125.     kCollectionReserved3Mask    = $00080000;
  126.     kCollectionReserved4Mask    = $00100000;
  127.     kCollectionReserved5Mask    = $00200000;
  128.     kCollectionReserved6Mask    = $00400000;
  129.     kCollectionReserved7Mask    = $00800000;
  130.     kCollectionReserved8Mask    = $01000000;
  131.     kCollectionReserved9Mask    = $02000000;
  132.     kCollectionReserved10Mask    = $04000000;
  133.     kCollectionReserved11Mask    = $08000000;
  134.     kCollectionReserved12Mask    = $10000000;
  135.     kCollectionReserved13Mask    = $20000000;
  136.     kCollectionPersistenceMask    = $40000000;
  137.     kCollectionLockMask            = $80000000;
  138.  
  139.  
  140. {*********}
  141. { Types   }
  142. {*********}
  143. { abstract data type for a collection }
  144.  
  145. TYPE
  146.     Collection = ^LONGINT;
  147. { collection member 4 byte tag }
  148.     CollectionTag                        = FourCharCode;
  149.     CollectionFlattenProcPtr = ProcPtr;  { FUNCTION CollectionFlatten(size: SInt32; data: UNIV Ptr; refCon: UNIV Ptr): OSErr; }
  150.  
  151.     CollectionExceptionProcPtr = ProcPtr;  { FUNCTION CollectionException(c: Collection; status: OSErr): OSErr; }
  152.  
  153.     CollectionFlattenUPP = UniversalProcPtr;
  154.     CollectionExceptionUPP = UniversalProcPtr;
  155.  
  156. CONST
  157.     uppCollectionFlattenProcInfo = $00000FE0;
  158.     uppCollectionExceptionProcInfo = $000002E0;
  159.  
  160. FUNCTION NewCollectionFlattenProc(userRoutine: CollectionFlattenProcPtr): CollectionFlattenUPP;
  161.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  162.     INLINE $2E9F;
  163.     {$ENDC}
  164.  
  165. FUNCTION NewCollectionExceptionProc(userRoutine: CollectionExceptionProcPtr): CollectionExceptionUPP;
  166.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  167.     INLINE $2E9F;
  168.     {$ENDC}
  169.  
  170. FUNCTION CallCollectionFlattenProc(size: SInt32; data: UNIV Ptr; refCon: UNIV Ptr; userRoutine: CollectionFlattenUPP): OSErr;
  171.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  172.     INLINE $205F, $4E90;
  173.     {$ENDC}
  174.  
  175. FUNCTION CallCollectionExceptionProc(c: Collection; status: OSErr; userRoutine: CollectionExceptionUPP): OSErr;
  176.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  177.     INLINE $205F, $4E90;
  178.     {$ENDC}
  179. {*******************************************}
  180. {************ Public interfaces ************}
  181. {*******************************************}
  182. FUNCTION NewCollection: Collection;
  183.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  184.     INLINE $7000, $ABF6;
  185.     {$ENDC}
  186.  
  187. PROCEDURE DisposeCollection(c: Collection);
  188.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  189.     INLINE $7001, $ABF6;
  190.     {$ENDC}
  191.  
  192. FUNCTION CloneCollection(c: Collection): Collection;
  193.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  194.     INLINE $7002, $ABF6;
  195.     {$ENDC}
  196.  
  197. FUNCTION CountCollectionOwners(c: Collection): SInt32;
  198.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  199.     INLINE $7003, $ABF6;
  200.     {$ENDC}
  201.  
  202. FUNCTION CopyCollection(srcCollection: Collection; dstCollection: Collection): Collection;
  203.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  204.     INLINE $7004, $ABF6;
  205.     {$ENDC}
  206.  
  207. FUNCTION GetCollectionDefaultAttributes(c: Collection): SInt32;
  208.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  209.     INLINE $7005, $ABF6;
  210.     {$ENDC}
  211.  
  212. PROCEDURE SetCollectionDefaultAttributes(c: Collection; whichAttributes: SInt32; newAttributes: SInt32);
  213.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  214.     INLINE $7006, $ABF6;
  215.     {$ENDC}
  216.  
  217. FUNCTION CountCollectionItems(c: Collection): SInt32;
  218.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  219.     INLINE $7007, $ABF6;
  220.     {$ENDC}
  221.  
  222. FUNCTION AddCollectionItem(c: Collection; tag: CollectionTag; id: SInt32; itemSize: SInt32; itemData: UNIV Ptr): OSErr;
  223.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  224.     INLINE $7008, $ABF6;
  225.     {$ENDC}
  226.  
  227. FUNCTION GetCollectionItem(c: Collection; tag: CollectionTag; id: SInt32; VAR itemSize: SInt32; itemData: UNIV Ptr): OSErr;
  228.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  229.     INLINE $7009, $ABF6;
  230.     {$ENDC}
  231.  
  232. FUNCTION RemoveCollectionItem(c: Collection; tag: CollectionTag; id: SInt32): OSErr;
  233.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  234.     INLINE $700A, $ABF6;
  235.     {$ENDC}
  236.  
  237. FUNCTION SetCollectionItemInfo(c: Collection; tag: CollectionTag; id: SInt32; whichAttributes: SInt32; newAttributes: SInt32): OSErr;
  238.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  239.     INLINE $700B, $ABF6;
  240.     {$ENDC}
  241.  
  242. FUNCTION GetCollectionItemInfo(c: Collection; tag: CollectionTag; id: SInt32; VAR index: SInt32; VAR itemSize: SInt32; VAR attributes: SInt32): OSErr;
  243.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  244.     INLINE $700C, $ABF6;
  245.     {$ENDC}
  246.  
  247. FUNCTION ReplaceIndexedCollectionItem(c: Collection; index: SInt32; itemSize: SInt32; itemData: UNIV Ptr): OSErr;
  248.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  249.     INLINE $700D, $ABF6;
  250.     {$ENDC}
  251.  
  252. FUNCTION GetIndexedCollectionItem(c: Collection; index: SInt32; VAR itemSize: SInt32; itemData: UNIV Ptr): OSErr;
  253.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  254.     INLINE $700E, $ABF6;
  255.     {$ENDC}
  256.  
  257. FUNCTION RemoveIndexedCollectionItem(c: Collection; index: SInt32): OSErr;
  258.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  259.     INLINE $700F, $ABF6;
  260.     {$ENDC}
  261.  
  262. FUNCTION SetIndexedCollectionItemInfo(c: Collection; index: SInt32; whichAttributes: SInt32; newAttributes: SInt32): OSErr;
  263.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  264.     INLINE $7010, $ABF6;
  265.     {$ENDC}
  266.  
  267. FUNCTION GetIndexedCollectionItemInfo(c: Collection; index: SInt32; VAR tag: CollectionTag; VAR id: SInt32; VAR itemSize: SInt32; VAR attributes: SInt32): OSErr;
  268.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  269.     INLINE $7011, $ABF6;
  270.     {$ENDC}
  271.  
  272. FUNCTION CollectionTagExists(c: Collection; tag: CollectionTag): BOOLEAN;
  273.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  274.     INLINE $7012, $ABF6;
  275.     {$ENDC}
  276.  
  277. FUNCTION CountCollectionTags(c: Collection): SInt32;
  278.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  279.     INLINE $7013, $ABF6;
  280.     {$ENDC}
  281.  
  282. FUNCTION GetIndexedCollectionTag(c: Collection; tagIndex: SInt32; VAR tag: CollectionTag): OSErr;
  283.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  284.     INLINE $7014, $ABF6;
  285.     {$ENDC}
  286.  
  287. FUNCTION CountTaggedCollectionItems(c: Collection; tag: CollectionTag): SInt32;
  288.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  289.     INLINE $7015, $ABF6;
  290.     {$ENDC}
  291.  
  292. FUNCTION GetTaggedCollectionItem(c: Collection; tag: CollectionTag; whichItem: SInt32; VAR itemSize: SInt32; itemData: UNIV Ptr): OSErr;
  293.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  294.     INLINE $7016, $ABF6;
  295.     {$ENDC}
  296.  
  297. FUNCTION GetTaggedCollectionItemInfo(c: Collection; tag: CollectionTag; whichItem: SInt32; VAR id: SInt32; VAR index: SInt32; VAR itemSize: SInt32; VAR attributes: SInt32): OSErr;
  298.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  299.     INLINE $7017, $ABF6;
  300.     {$ENDC}
  301.  
  302. PROCEDURE PurgeCollection(c: Collection; whichAttributes: SInt32; matchingAttributes: SInt32);
  303.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  304.     INLINE $7018, $ABF6;
  305.     {$ENDC}
  306.  
  307. PROCEDURE PurgeCollectionTag(c: Collection; tag: CollectionTag);
  308.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  309.     INLINE $7019, $ABF6;
  310.     {$ENDC}
  311.  
  312. PROCEDURE EmptyCollection(c: Collection);
  313.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  314.     INLINE $701A, $ABF6;
  315.     {$ENDC}
  316. FUNCTION FlattenCollection(c: Collection; flattenProc: CollectionFlattenUPP; refCon: UNIV Ptr): OSErr;
  317.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  318.     INLINE $701B, $ABF6;
  319.     {$ENDC}
  320.  
  321. FUNCTION FlattenPartialCollection(c: Collection; flattenProc: CollectionFlattenUPP; refCon: UNIV Ptr; whichAttributes: SInt32; matchingAttributes: SInt32): OSErr;
  322.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  323.     INLINE $701C, $ABF6;
  324.     {$ENDC}
  325.  
  326. FUNCTION UnflattenCollection(c: Collection; flattenProc: CollectionFlattenUPP; refCon: UNIV Ptr): OSErr;
  327.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  328.     INLINE $701D, $ABF6;
  329.     {$ENDC}
  330.  
  331. FUNCTION GetCollectionExceptionProc(c: Collection): CollectionExceptionUPP;
  332.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  333.     INLINE $701E, $ABF6;
  334.     {$ENDC}
  335.  
  336. PROCEDURE SetCollectionExceptionProc(c: Collection; exceptionProc: CollectionExceptionUPP);
  337.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  338.     INLINE $701F, $ABF6;
  339.     {$ENDC}
  340.  
  341. FUNCTION GetNewCollection(collectionID: SInt16): Collection;
  342.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  343.     INLINE $7020, $ABF6;
  344.     {$ENDC}
  345.  
  346. {********************************************************************}
  347. {************* Utility routines for handle-based access *************}
  348. {********************************************************************}
  349. FUNCTION AddCollectionItemHdl(aCollection: Collection; tag: CollectionTag; id: SInt32; itemData: Handle): OSErr;
  350.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  351.     INLINE $7021, $ABF6;
  352.     {$ENDC}
  353.  
  354. FUNCTION GetCollectionItemHdl(aCollection: Collection; tag: CollectionTag; id: SInt32; itemData: Handle): OSErr;
  355.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  356.     INLINE $7022, $ABF6;
  357.     {$ENDC}
  358.  
  359. FUNCTION ReplaceIndexedCollectionItemHdl(aCollection: Collection; index: SInt32; itemData: Handle): OSErr;
  360.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  361.     INLINE $7023, $ABF6;
  362.     {$ENDC}
  363.  
  364. FUNCTION GetIndexedCollectionItemHdl(aCollection: Collection; index: SInt32; itemData: Handle): OSErr;
  365.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  366.     INLINE $7024, $ABF6;
  367.     {$ENDC}
  368.  
  369. FUNCTION FlattenCollectionToHdl(aCollection: Collection; flattened: Handle): OSErr;
  370.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  371.     INLINE $7025, $ABF6;
  372.     {$ENDC}
  373.  
  374. FUNCTION UnflattenCollectionFromHdl(aCollection: Collection; flattened: Handle): OSErr;
  375.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  376.     INLINE $7026, $ABF6;
  377.     {$ENDC}
  378.  
  379. {$IFC OLDROUTINENAMES }
  380.  
  381. CONST
  382.     dontWantTag                    = 0;
  383.     dontWantId                    = 0;
  384.     dontWantSize                = 0;
  385.     dontWantAttributes            = 0;
  386.     dontWantIndex                = 0;
  387.     dontWantData                = 0;
  388.  
  389.     noCollectionAttributes        = $00000000;
  390.     allCollectionAttributes        = $FFFFFFFF;
  391.     userCollectionAttributes    = $0000FFFF;
  392.     defaultCollectionAttributes    = $40000000;
  393.  
  394.     collectionUser0Bit            = 0;
  395.     collectionUser1Bit            = 1;
  396.     collectionUser2Bit            = 2;
  397.     collectionUser3Bit            = 3;
  398.     collectionUser4Bit            = 4;
  399.     collectionUser5Bit            = 5;
  400.     collectionUser6Bit            = 6;
  401.     collectionUser7Bit            = 7;
  402.     collectionUser8Bit            = 8;
  403.     collectionUser9Bit            = 9;
  404.     collectionUser10Bit            = 10;
  405.     collectionUser11Bit            = 11;
  406.     collectionUser12Bit            = 12;
  407.     collectionUser13Bit            = 13;
  408.     collectionUser14Bit            = 14;
  409.     collectionUser15Bit            = 15;
  410.     collectionReserved0Bit        = 16;
  411.     collectionReserved1Bit        = 17;
  412.     collectionReserved2Bit        = 18;
  413.     collectionReserved3Bit        = 19;
  414.     collectionReserved4Bit        = 20;
  415.     collectionReserved5Bit        = 21;
  416.     collectionReserved6Bit        = 22;
  417.     collectionReserved7Bit        = 23;
  418.     collectionReserved8Bit        = 24;
  419.     collectionReserved9Bit        = 25;
  420.     collectionReserved10Bit        = 26;
  421.     collectionReserved11Bit        = 27;
  422.     collectionReserved12Bit        = 28;
  423.     collectionReserved13Bit        = 29;
  424.     collectionPersistenceBit    = 30;
  425.     collectionLockBit            = 31;
  426.  
  427.     collectionUser0Mask            = $00000001;
  428.     collectionUser1Mask            = $00000002;
  429.     collectionUser2Mask            = $00000004;
  430.     collectionUser3Mask            = $00000008;
  431.     collectionUser4Mask            = $00000010;
  432.     collectionUser5Mask            = $00000020;
  433.     collectionUser6Mask            = $00000040;
  434.     collectionUser7Mask            = $00000080;
  435.     collectionUser8Mask            = $00000100;
  436.     collectionUser9Mask            = $00000200;
  437.     collectionUser10Mask        = $00000400;
  438.     collectionUser11Mask        = $00000800;
  439.     collectionUser12Mask        = $00001000;
  440.     collectionUser13Mask        = $00002000;
  441.     collectionUser14Mask        = $00004000;
  442.     collectionUser15Mask        = $00008000;
  443.     collectionReserved0Mask        = $00010000;
  444.     collectionReserved1Mask        = $00020000;
  445.     collectionReserved2Mask        = $00040000;
  446.     collectionReserved3Mask        = $00080000;
  447.     collectionReserved4Mask        = $00100000;
  448.     collectionReserved5Mask        = $00200000;
  449.     collectionReserved6Mask        = $00400000;
  450.     collectionReserved7Mask        = $00800000;
  451.     collectionReserved8Mask        = $01000000;
  452.     collectionReserved9Mask        = $02000000;
  453.     collectionReserved10Mask    = $04000000;
  454.     collectionReserved11Mask    = $08000000;
  455.     collectionReserved12Mask    = $10000000;
  456.     collectionReserved13Mask    = $20000000;
  457.     collectionPersistenceMask    = $40000000;
  458.     collectionLockMask            = $80000000;
  459.  
  460. {$ENDC}  {OLDROUTINENAMES}
  461.  
  462. {$ALIGN RESET}
  463. {$POP}
  464.  
  465. {$SETC UsingIncludes := CollectionsIncludes}
  466.  
  467. {$ENDC} {__COLLECTIONS__}
  468.  
  469. {$IFC NOT UsingIncludes}
  470.  END.
  471. {$ENDC}
  472.